package com.dys.ai.mapper;

import com.dys.ai.common.dto.TrainDTO;
import com.dys.ai.entity.Train;
import org.apache.ibatis.annotations.Mapper;

import java.time.LocalTime;
import java.util.List;

/**
 * 车次相关信息
 */
@Mapper
public interface TrainMapper {

    /**
     * 根据车次ID查询车次信息
     *
     * @param trainId 车次ID
     * @return 车次信息
     */
    Train getTrainById(Long trainId);

    /**
     * 查询车次（通过车次号、出发站、到达站、日期）
     */
    Train getTrainByCriteria(String trainNumber, String departureStation, String arrivalStation, LocalTime departureDate);

    /**
     * 根据车次ID查询发车时间
     */
    LocalTime getDepartureTime(Long trainId);

    /**
     * 查询所有车次信息
     *
     * @return 车次列表
     */
    List<TrainDTO> selectTrains();
}
